﻿using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace StyleMVVM.DotNet.Aspects.UnitTests.Classes
{
	public class SimpleAspect : IAspect
	{
		public static int InvokeCount { get; set; }

		public void Invoke(IAspectInvokeContext context)
		{
			InvokeCount++;

			var args = string.Join(", ", context.Args.Select(x => (x ?? string.Empty).ToString()));
			Debug.WriteLine(string.Format("StyleMVVM: {0}({1})", context.MemberName, args));

			context.Proceed();
		}
	}
}
